from faker import Faker
# 1、定义一个桌子类（Desk），包含长（length）、宽（width）、高（height）属性，
# 包含一个打印桌子信息属性的方法（showInfo）。实例化2个桌子对象，为其赋予不同的属性值，并调用showInfo方法，输出每个桌子的信息。
# class desk():
#     def __init__(self,length,width,height):
#         self.length = length
#         self.width = width
#         self.heigth =height
#     def showInfo(self):
#         return "这个桌子长{}，宽{}，高{}".format(self.length ,self.width ,self.heigth )
# d1=desk(length=78,width=67,height=90)
# d2=desk(length=90,width=78,height=100)
# print(d1.showInfo())
# print(d2.showInfo())


# 2.定义一个用户类(User),用户名(username)和密码(password)是这个类的属性。
# （1）实例化两个用户,分别有不同的用户名和密码。
# （2）设计一个方法 修改密码

# class user():
#     def __init__(self,username,password):
#         self.username =username
#         self.password =password
#     def deng(self):
#             return "用户名是{}，密码是{}".format(self.username,self.password)
# u1 = user("huahua",123)
# u2 = user("haha",456)
# print(u1.deng())
# print(u2.deng())

# class user():
#     def __init__(self,username,password):
#         self.username =username
#         self.password =password
#     def update(self,old_password,new_password):
#        if old_password ==self.password:
#         self.password =new_password
#        else:
#            print("密码错误，修改失败")
#        return "密码修改完成"
# u1 = user("huahua",123)
# u2 = user("haha",456)
# print(u1.username,u1.password )
# u1.update(123,789)
#
# print(u1.username ,u1.password)





# 3.有下面的类属性：姓名、年龄、成绩列表[语文，数学，英语]，其中每门课成绩的类型为整数，类的方法如下所述：
# (1)列表项列表项获取学生的姓名。get_name()，返回类型：str。
# (2)获取学生的年龄。get_age()，返回类型：int。
# (3)返回3门科目中最高的分数。get_course()， 返回类型：int。 类定义好之后，可以定义同学测试如下:
# class classid():
#     def __init__(self,name,age,grade):
#         self.name = name
#         self.age = age
#         self.grade = grade
#     def get_name(self):
#         return "学生的姓名{}".format(self.name)
#     def get_age(self):
#         return "学生的成绩{}".format(self.age)
#     def get_grade(self):
#         return "学生的成绩{}".format(max(self.grade))
#
#
# c1 = classid("小宁",18,[67,89])
# print(c1.get_age())
# print(c1.get_name())
# print(c1.get_grade())









# 4. 淘宝商家后台，可以上架商品、下架商品，功能如下：
# （1） 可以添加商品，商家添加完的商品会存到商品列表
# 1.1  商品要有名称、sku、价格
# （2） 可以修改商品信息：名称、sku、价格
# （3） 可以对商品进行下架，下架后的商品不再展示

class T():
    def __init__(self):
     self.list1=[]
    def add(self,name,sku,price):
        self.list1.append({"商品名称":name,"商品属性":sku,"商品价格":price})
    def update(self,num,name=None,sku=None,price=None):
        if name == None:
            pass
        else:
            self.list1[num-1]["商品名称"]=name
        if sku==None:
            pass
        else:
            self.list1[num-1]["商品属性"]=sku
        if price==None:
            pass
        else:
            self.list1[num-1]["商品价格"]=price
    def delete(self,num):
        self.list1.pop(num-1)
    def show(self):
        return self.list1



t1 =T()
t1.add("月饼","34个",89)
t1.add("薯片","60kg",90)
print(t1.show())
t1.update(2,sku = "一捆29个")
print(t1.show())
t1.delete(1)
print(t1.show())
